Glossary Item Box
Rule Name: |
Validate valid value rule area (container) | ||
Position: |
Under: Check ASN.1 | ||
Name: |
ASN_ValidRule | ||
Default: |
Checked | ||
Usage: |
A container class for a variety of rules that examine the contents of the valid-value-rule area. The contents of the valid-value-rule (a term invented by ITS) is basically everything past the data type. In other words all the content definition, or what would be called facet restrictions in XML, appear here. This also includes any comments placed into the code itself. While often very terse, this field can become quite large in enumerations with usage comments.
For historical reasons from IEEE 1488/89, all data elements use the ASN Name, the data-type, and the valid-value-rule as the fields to hold the ASN of the record. The message-body field is empty in these records.
|
This rule holds several other rules beneath it as follows:
[ Click on the arrows below to expand the rule and see its detailed information ]
Replace any tabs in valid value rule with 3 spaces
Rule Name: |
Replace any tabs in valid value rule with 3 spaces |
Position: |
Under: Validate valid value rule area |
Name: |
VVR_RemoveTabs |
Default: |
Checked |
Usage: |
The valid value rule field is parsed and any occurrences of tab characters are replaced with three spaces. Spaces are preferred over tabs so that when printed in a mono-spaced type the listing appears correct. If changes were made, a note is added to the log and displayed. |
Replace any non-ASCII chars (values >127) with pure ASCII
Rule Name: |
Replace any non-ASCII chars (values >127) with pure ASCII |
Position: |
Under: Validate valid value rule area |
Name: |
VVR_JustASCII |
Default: |
Checked |
Usage: |
The valid value rule field is parsed and any occurrences of characters with hex values above 127 are replaced. The replacement strings are taken from similar characters when possible (for example, the right hanging quote symbol is replaced with a straight quote). If changes were made, a note is added to the log and displayed. |
Indent trailing lines of code by 3 spaces (pretty print)
Rule Name: |
Indent trailing lines of code by 3 spaces (pretty print) |
Position: |
Under: Validate valid value rule area |
Name: |
VVR_IndentLines |
Default: |
Checked |
Usage: |
The valid value rule field is parsed and all lines following after the first line are indented at least three spaces to present some white space along the left edge of the listing. A rather primitive pretty print. If changes were made, a note is added to the log and displayed. |
Make text entries into valid comments
Rule Name: |
Make text entries into valid comments |
Position: |
Under: Validate valid value rule area |
Name: |
Make_Comments |
Default: |
Checked |
Usage: |
The valid value rule field is parsed and any content found after the “code” part which seems to be a possible comment is rendered into a legal ASN comment (typically by preceding it with two dashes). Many early standards did not insert proper comment marks in their work, and this rule was developed to correct this. If changes were made, a note is added to the log and displayed. |
Rule Name: |
Correct INTEGER range limits |
Position: |
Under: Validate valid value rule area |
Name: |
Scrub_INTEGERS |
Default: |
Checked |
Usage: |
The overall ASN is parsed and if it is determined to be an INTEGER type, the valid value rule “code” part is examined to detect any possible valid range limits.
Any ranges that are found are re-stated in a syntactically valid and correct way. Properly formed ASN is left unchanged Many early standards did not handle limit ranges correctly, and this rule was developed to correct this. If changes were made, a note is added to the log and displayed. |
Rule Name: |
Correct IA5STRING size limits |
Position: |
Under: Validate valid value rule area |
Name: |
Scrub_STRINGS |
Default: |
Checked |
Usage: |
The overall ASN is parsed and if it is determined to be an IA5String type, the valid value rule “code” part is examined to detect any possible valid range limits for the string.
Any ranges that are found are re-stated in a syntactically valid and correct way. Properly formed ASN is left unchanged Many early standards did not handle limit ranges correctly, and this rule was developed to correct this. If changes were made, a note is added to the log and displayed. |
Rule Name: |
Correct ENUMERATION lists |
Position: |
Under: Validate valid value rule area |
Name: |
Scrub_ENUMS |
Default: |
Checked |
Usage: |
The overall ASN is parsed and if it is determined to be an ENUMERATED type, the valid value rule “code” part is examined to extract any possible strings and values.
Any “sets” of data that are found are placed into an array, sorted, and re-stated in a syntactically valid and correct way, including any comment for that line. Properly formed ASN is left unchanged Many early standards did not handle enumerated lists of items correctly, and this rule was developed to correct this. If changes were made, a note is added to the log and displayed. |
Rule Name: |
Correct BIT STRING lists |
Position: |
Under: Validate valid value rule area |
Name: |
Scrub_BITSTRINGS |
Default: |
Checked |
Usage: |
The overall ASN is parsed and if it is determined to be an BIT STRING type, the valid value rule “code” part is examined to extract any possible strings and values.
Any “sets” of data that are found are placed into an array, sorted, and re-stated in a syntactically valid and correct way, including any comment for that line. Properly formed ASN is left unchanged Many early standards did not handle enumerated lists of items correctly, and this rule was developed to correct this. If changes were made, a note is added to the log and displayed. |
Replace occurrences of 3-dot char with "..."
Rule Name: |
Replace occurrences of 3-dot char with "..." | ||
Position: |
Under: Validate valid value rule area | ||
Name: |
ASN_3_Dots | ||
Default: |
Checked | ||
Usage: |
Those creating the standards using MS Word often have a problem with its autocorrect feature mucking up source code listings. One of the ways in which this occurs is that three periods in a row are translated to an (illegal in ASN) symbol. This rule detects this symbol and replace it with the three periods needed by valid ASN. If changes were made, a note is added to the log and displayed.
|
Replace occurrences of 4294967296 with 4294967295 (max unsigned value)
Rule Name: |
Replace occurrences of 4294967296 with 4294967295 (max unsigned value) |
Position: |
Under: Validate valid value rule area |
Name: |
ASN_BigValues1 |
Default: |
UN-Checked |
Usage: |
The valid value rule is parsed and if it is an INTEGER data type, and the upper range is set to 4294967296, then it is changed to be 4294967295 (which is the max allowed value in a 32 bit unsigned variable, recall that the range is defined as 0 to 2^N –1). If changes were made, a note is added to the log and displayed. |
Replace occurrences of 2147483648 with 2147483647 (max signed value)
Rule Name: |
Replace occurrences of 2147483648 with 2147483647 (max signed value) |
Position: |
Under: Validate valid value rule area |
Name: |
ASN_BigValues2 |
Default: |
UN-Checked |
Usage: |
The valid value rule is parsed and if it is an INTEGER data type, and the upper range is set to 2147483648, then it is changed to be 2147483647 (which is the max allowed value in a 32 bit signed variable, recall that the range is defined as 0 to 2^N –1). If changes were made, a note is added to the log and displayed. |
Remove duplicative ASN name entries when found in the valid value rule
Rule Name: |
Remove duplicative ASN name entries when found in the valid value rule |
Position: |
Under: Validate valid value rule area |
Name: |
Remove_DupeNames |
Default: |
Checked |
Usage: |
If the proper name of the entry appears in both the ASN name field and the valid value rule field, it is removed from the 2nd field as well as the delimiter. If changes were made, a note is added to the log and displayed. |
When a list is converted, keep old list as a comment
Rule Name: |
When a list is converted, keep old list as a comment |
Position: |
Under: Validate valid value rule area |
Name: |
Keep_Old_Lists |
Default: |
UN-Checked |
Usage: |
If enabled, when a conversion from an older (not valid ASN) list has been made, typically from an enumeration or a bit string, then the original list is placed back at the end of the listing as a valid comment field. The user typically deletes this after confirming the automatic conversion was acceptable. |
© SubCarrier Systems Corp. All Rights Reserved.